home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 1 / Atari Mega Archive - Volume 1.iso / tex / tex31 / texsrc.lzh / TEXSRC.LZH / tex2.c < prev    next >
Encoding:
C/C++ Source or Header  |  1990-11-28  |  30.0 KB  |  1,625 lines

  1. #define EXTERN extern
  2. #include "texd.h"
  3.  
  4. void zshowbox ( p ) 
  5. halfword p ; 
  6. {showbox_regmem 
  7.   depththreshold = eqtb [ 6188 ] .cint ; 
  8.   breadthmax = eqtb [ 6187 ] .cint ; 
  9.   if ( breadthmax <= 0 ) 
  10.   breadthmax = 5 ; 
  11.   if ( poolptr + depththreshold >= poolsize ) 
  12.   depththreshold = poolsize - poolptr - 1 ; 
  13.   shownodelist ( p ) ; 
  14.   println () ; 
  15. void zdeletetokenref ( p ) 
  16. halfword p ; 
  17. {deletetokenref_regmem 
  18.   if ( mem [ p ] .hh .v.LH == 0 ) 
  19.   flushlist ( p ) ; 
  20.   else decr ( mem [ p ] .hh .v.LH ) ; 
  21. void zdeleteglueref ( p ) 
  22. halfword p ; 
  23. {deleteglueref_regmem 
  24.   if ( mem [ p ] .hh .v.RH == 0 ) 
  25.   freenode ( p , 4 ) ; 
  26.   else decr ( mem [ p ] .hh .v.RH ) ; 
  27. void zflushnodelist ( p ) 
  28. halfword p ; 
  29. {/* 30 */ flushnodelist_regmem 
  30.   halfword q  ; 
  31.   while ( p != 0 ) {
  32.       
  33.     q = mem [ p ] .hh .v.RH ; 
  34.     if ( ( p >= himemmin ) ) 
  35.     {
  36.       mem [ p ] .hh .v.RH = avail ; 
  37.       avail = p ; 
  38.     ;
  39. #ifdef STAT
  40.       decr ( dynused ) ; 
  41. #endif /* STAT */
  42.     } 
  43.     else {
  44.     
  45.       switch ( mem [ p ] .hh.b0 ) 
  46.       {case 0 : 
  47.       case 1 : 
  48.       case 13 : 
  49.     {
  50.       flushnodelist ( mem [ p + 5 ] .hh .v.RH ) ; 
  51.       freenode ( p , 7 ) ; 
  52.       goto lab30 ; 
  53.     } 
  54.     break ; 
  55.       case 2 : 
  56.     {
  57.       freenode ( p , 4 ) ; 
  58.       goto lab30 ; 
  59.     } 
  60.     break ; 
  61.       case 3 : 
  62.     {
  63.       flushnodelist ( mem [ p + 4 ] .hh .v.LH ) ; 
  64.       deleteglueref ( mem [ p + 4 ] .hh .v.RH ) ; 
  65.       freenode ( p , 5 ) ; 
  66.       goto lab30 ; 
  67.     } 
  68.     break ; 
  69.       case 8 : 
  70.     {
  71.       switch ( mem [ p ] .hh.b1 ) 
  72.       {case 0 : 
  73.         freenode ( p , 3 ) ; 
  74.         break ; 
  75.       case 1 : 
  76.       case 3 : 
  77.         {
  78.           deletetokenref ( mem [ p + 1 ] .hh .v.RH ) ; 
  79.           freenode ( p , 2 ) ; 
  80.           goto lab30 ; 
  81.         } 
  82.         break ; 
  83.       case 2 : 
  84.       case 4 : 
  85.         freenode ( p , 2 ) ; 
  86.         break ; 
  87.         default: 
  88.         confusion ( 1285 ) ; 
  89.         break ; 
  90.       } 
  91.       goto lab30 ; 
  92.     } 
  93.     break ; 
  94.       case 10 : 
  95.     {
  96.       {
  97.         if ( mem [ mem [ p + 1 ] .hh .v.LH ] .hh .v.RH == 0 ) 
  98.         freenode ( mem [ p + 1 ] .hh .v.LH , 4 ) ; 
  99.         else decr ( mem [ mem [ p + 1 ] .hh .v.LH ] .hh .v.RH ) ; 
  100.       } 
  101.       if ( mem [ p + 1 ] .hh .v.RH != 0 ) 
  102.       flushnodelist ( mem [ p + 1 ] .hh .v.RH ) ; 
  103.     } 
  104.     break ; 
  105.       case 11 : 
  106.       case 9 : 
  107.       case 12 : 
  108.     ; 
  109.     break ; 
  110.       case 6 : 
  111.     flushnodelist ( mem [ p + 1 ] .hh .v.RH ) ; 
  112.     break ; 
  113.       case 4 : 
  114.     deletetokenref ( mem [ p + 1 ] .cint ) ; 
  115.     break ; 
  116.       case 7 : 
  117.     {
  118.       flushnodelist ( mem [ p + 1 ] .hh .v.LH ) ; 
  119.       flushnodelist ( mem [ p + 1 ] .hh .v.RH ) ; 
  120.     } 
  121.     break ; 
  122.       case 5 : 
  123.     flushnodelist ( mem [ p + 1 ] .cint ) ; 
  124.     break ; 
  125.       case 14 : 
  126.     {
  127.       freenode ( p , 3 ) ; 
  128.       goto lab30 ; 
  129.     } 
  130.     break ; 
  131.       case 15 : 
  132.     {
  133.       flushnodelist ( mem [ p + 1 ] .hh .v.LH ) ; 
  134.       flushnodelist ( mem [ p + 1 ] .hh .v.RH ) ; 
  135.       flushnodelist ( mem [ p + 2 ] .hh .v.LH ) ; 
  136.       flushnodelist ( mem [ p + 2 ] .hh .v.RH ) ; 
  137.       freenode ( p , 3 ) ; 
  138.       goto lab30 ; 
  139.     } 
  140.     break ; 
  141.       case 16 : 
  142.       case 17 : 
  143.       case 18 : 
  144.       case 19 : 
  145.       case 20 : 
  146.       case 21 : 
  147.       case 22 : 
  148.       case 23 : 
  149.       case 24 : 
  150.       case 27 : 
  151.       case 26 : 
  152.       case 29 : 
  153.       case 28 : 
  154.     {
  155.       if ( mem [ p + 1 ] .hh .v.RH >= 2 ) 
  156.       flushnodelist ( mem [ p + 1 ] .hh .v.LH ) ; 
  157.       if ( mem [ p + 2 ] .hh .v.RH >= 2 ) 
  158.       flushnodelist ( mem [ p + 2 ] .hh .v.LH ) ; 
  159.       if ( mem [ p + 3 ] .hh .v.RH >= 2 ) 
  160.       flushnodelist ( mem [ p + 3 ] .hh .v.LH ) ; 
  161.       if ( mem [ p ] .hh.b0 == 24 ) 
  162.       freenode ( p , 5 ) ; 
  163.       else if ( mem [ p ] .hh.b0 == 28 ) 
  164.       freenode ( p , 5 ) ; 
  165.       else freenode ( p , 4 ) ; 
  166.       goto lab30 ; 
  167.     } 
  168.     break ; 
  169.       case 30 : 
  170.       case 31 : 
  171.     {
  172.       freenode ( p , 4 ) ; 
  173.       goto lab30 ; 
  174.     } 
  175.     break ; 
  176.       case 25 : 
  177.     {
  178.       flushnodelist ( mem [ p + 2 ] .hh .v.LH ) ; 
  179.       flushnodelist ( mem [ p + 3 ] .hh .v.LH ) ; 
  180.       freenode ( p , 6 ) ; 
  181.       goto lab30 ; 
  182.     } 
  183.     break ; 
  184.     default: 
  185.     confusion ( 350 ) ; 
  186.     break ; 
  187.       } 
  188.       freenode ( p , 2 ) ; 
  189.       lab30: ; 
  190.     } 
  191.     p = q ; 
  192.   } 
  193. halfword zcopynodelist ( p ) 
  194. halfword p ; 
  195. {register halfword Result; copynodelist_regmem 
  196.   halfword h  ; 
  197.   halfword q  ; 
  198.   halfword r  ; 
  199.   schar words  ; 
  200.   h = getavail () ; 
  201.   q = h ; 
  202.   while ( p != 0 ) {
  203.       
  204.     words = 1 ; 
  205.     if ( ( p >= himemmin ) ) 
  206.     r = getavail () ; 
  207.     else switch ( mem [ p ] .hh.b0 ) 
  208.     {case 0 : 
  209.     case 1 : 
  210.     case 13 : 
  211.       {
  212.     r = getnode ( 7 ) ; 
  213.     mem [ r + 6 ] = mem [ p + 6 ] ; 
  214.     mem [ r + 5 ] = mem [ p + 5 ] ; 
  215.     mem [ r + 5 ] .hh .v.RH = copynodelist ( mem [ p + 5 ] .hh .v.RH ) ; 
  216.     words = 5 ; 
  217.       } 
  218.       break ; 
  219.     case 2 : 
  220.       {
  221.     r = getnode ( 4 ) ; 
  222.     words = 4 ; 
  223.       } 
  224.       break ; 
  225.     case 3 : 
  226.       {
  227.     r = getnode ( 5 ) ; 
  228.     mem [ r + 4 ] = mem [ p + 4 ] ; 
  229.     incr ( mem [ mem [ p + 4 ] .hh .v.RH ] .hh .v.RH ) ; 
  230.     mem [ r + 4 ] .hh .v.LH = copynodelist ( mem [ p + 4 ] .hh .v.LH ) ; 
  231.     words = 4 ; 
  232.       } 
  233.       break ; 
  234.     case 8 : 
  235.       switch ( mem [ p ] .hh.b1 ) 
  236.       {case 0 : 
  237.     {
  238.       r = getnode ( 3 ) ; 
  239.       words = 3 ; 
  240.     } 
  241.     break ; 
  242.       case 1 : 
  243.       case 3 : 
  244.     {
  245.       r = getnode ( 2 ) ; 
  246.       incr ( mem [ mem [ p + 1 ] .hh .v.RH ] .hh .v.LH ) ; 
  247.       words = 2 ; 
  248.     } 
  249.     break ; 
  250.       case 2 : 
  251.       case 4 : 
  252.     {
  253.       r = getnode ( 2 ) ; 
  254.       words = 2 ; 
  255.     } 
  256.     break ; 
  257.     default: 
  258.     confusion ( 1284 ) ; 
  259.     break ; 
  260.       } 
  261.       break ; 
  262.     case 10 : 
  263.       {
  264.     r = getnode ( 2 ) ; 
  265.     incr ( mem [ mem [ p + 1 ] .hh .v.LH ] .hh .v.RH ) ; 
  266.     mem [ r + 1 ] .hh .v.LH = mem [ p + 1 ] .hh .v.LH ; 
  267.     mem [ r + 1 ] .hh .v.RH = copynodelist ( mem [ p + 1 ] .hh .v.RH ) ; 
  268.       } 
  269.       break ; 
  270.     case 11 : 
  271.     case 9 : 
  272.     case 12 : 
  273.       {
  274.     r = getnode ( 2 ) ; 
  275.     words = 2 ; 
  276.       } 
  277.       break ; 
  278.     case 6 : 
  279.       {
  280.     r = getnode ( 2 ) ; 
  281.     mem [ r + 1 ] = mem [ p + 1 ] ; 
  282.     mem [ r + 1 ] .hh .v.RH = copynodelist ( mem [ p + 1 ] .hh .v.RH ) ; 
  283.       } 
  284.       break ; 
  285.     case 7 : 
  286.       {
  287.     r = getnode ( 2 ) ; 
  288.     mem [ r + 1 ] .hh .v.LH = copynodelist ( mem [ p + 1 ] .hh .v.LH ) ; 
  289.     mem [ r + 1 ] .hh .v.RH = copynodelist ( mem [ p + 1 ] .hh .v.RH ) ; 
  290.       } 
  291.       break ; 
  292.     case 4 : 
  293.       {
  294.     r = getnode ( 2 ) ; 
  295.     incr ( mem [ mem [ p + 1 ] .cint ] .hh .v.LH ) ; 
  296.     words = 2 ; 
  297.       } 
  298.       break ; 
  299.     case 5 : 
  300.       {
  301.     r = getnode ( 2 ) ; 
  302.     mem [ r + 1 ] .cint = copynodelist ( mem [ p + 1 ] .cint ) ; 
  303.       } 
  304.       break ; 
  305.       default: 
  306.       confusion ( 351 ) ; 
  307.       break ; 
  308.     } 
  309.     while ( words > 0 ) {
  310.     
  311.       decr ( words ) ; 
  312.       mem [ r + words ] = mem [ p + words ] ; 
  313.     } 
  314.     mem [ q ] .hh .v.RH = r ; 
  315.     q = r ; 
  316.     p = mem [ p ] .hh .v.RH ; 
  317.   } 
  318.   mem [ q ] .hh .v.RH = 0 ; 
  319.   q = mem [ h ] .hh .v.RH ; 
  320.   {
  321.     mem [ h ] .hh .v.RH = avail ; 
  322.     avail = h ; 
  323.     ;
  324. #ifdef STAT
  325.     decr ( dynused ) ; 
  326. #endif /* STAT */
  327.   } 
  328.   Result = q ; 
  329.   return(Result) ; 
  330. void zprintmode ( m ) 
  331. integer m ; 
  332. {printmode_regmem 
  333.   if ( m > 0 ) 
  334.   switch ( m / ( 101 ) ) 
  335.   {case 0 : 
  336.     print ( 352 ) ; 
  337.     break ; 
  338.   case 1 : 
  339.     print ( 353 ) ; 
  340.     break ; 
  341.   case 2 : 
  342.     print ( 354 ) ; 
  343.     break ; 
  344.   } 
  345.   else if ( m == 0 ) 
  346.   print ( 355 ) ; 
  347.   else switch ( ( - (integer) m ) / ( 101 ) ) 
  348.   {case 0 : 
  349.     print ( 356 ) ; 
  350.     break ; 
  351.   case 1 : 
  352.     print ( 357 ) ; 
  353.     break ; 
  354.   case 2 : 
  355.     print ( 340 ) ; 
  356.     break ; 
  357.   } 
  358.   print ( 358 ) ; 
  359. void pushnest ( ) 
  360. {pushnest_regmem 
  361.   if ( nestptr > maxneststack ) 
  362.   {
  363.     maxneststack = nestptr ; 
  364.     if ( nestptr == nestsize ) 
  365.     overflow ( 359 , nestsize ) ; 
  366.   } 
  367.   nest [ nestptr ] = curlist ; 
  368.   incr ( nestptr ) ; 
  369.   curlist .headfield = getavail () ; 
  370.   curlist .tailfield = curlist .headfield ; 
  371.   curlist .pgfield = 0 ; 
  372.   curlist .mlfield = line ; 
  373. void popnest ( ) 
  374. {popnest_regmem 
  375.   {
  376.     mem [ curlist .headfield ] .hh .v.RH = avail ; 
  377.     avail = curlist .headfield ; 
  378.     ;
  379. #ifdef STAT
  380.     decr ( dynused ) ; 
  381. #endif /* STAT */
  382.   } 
  383.   decr ( nestptr ) ; 
  384.   curlist = nest [ nestptr ] ; 
  385. void showactivities ( ) 
  386. {showactivities_regmem 
  387.   integer p  ; 
  388.   short m  ; 
  389.   memoryword a  ; 
  390.   halfword q, r  ; 
  391.   integer t  ; 
  392.   nest [ nestptr ] = curlist ; 
  393.   printnl ( 335 ) ; 
  394.   println () ; 
  395.   {register integer for_end; p = nestptr ; for_end = 0 ; if ( p >= for_end) 
  396.   do 
  397.     {
  398.       m = nest [ p ] .modefield ; 
  399.       a = nest [ p ] .auxfield ; 
  400.       printnl ( 360 ) ; 
  401.       printmode ( m ) ; 
  402.       print ( 361 ) ; 
  403.       printint ( abs ( nest [ p ] .mlfield ) ) ; 
  404.       if ( m == 102 ) 
  405.       if ( ( nest [ p ] .lhmfield != 2 ) || ( nest [ p ] .rhmfield != 3 ) ) 
  406.       {
  407.     print ( 362 ) ; 
  408.     printint ( nest [ p ] .lhmfield ) ; 
  409.     printchar ( 44 ) ; 
  410.     printint ( nest [ p ] .rhmfield ) ; 
  411.     printchar ( 41 ) ; 
  412.       } 
  413.       if ( nest [ p ] .mlfield < 0 ) 
  414.       print ( 363 ) ; 
  415.       if ( p == 0 ) 
  416.       {
  417.     if ( memtop - 2 != pagetail ) 
  418.     {
  419.       printnl ( 973 ) ; 
  420.       if ( outputactive ) 
  421.       print ( 974 ) ; 
  422.       showbox ( mem [ memtop - 2 ] .hh .v.RH ) ; 
  423.       if ( pagecontents > 0 ) 
  424.       {
  425.         printnl ( 975 ) ; 
  426.         printtotals () ; 
  427.         printnl ( 976 ) ; 
  428.         printscaled ( pagesofar [ 0 ] ) ; 
  429.         r = mem [ memtop ] .hh .v.RH ; 
  430.         while ( r != memtop ) {
  431.         
  432.           println () ; 
  433.           printesc ( 327 ) ; 
  434.           t = mem [ r ] .hh.b1 ; 
  435.           printint ( t ) ; 
  436.           print ( 977 ) ; 
  437.           t = xovern ( mem [ r + 3 ] .cint , 1000 ) * eqtb [ 6218 + t ] 
  438.           .cint ; 
  439.           printscaled ( t ) ; 
  440.           if ( mem [ r ] .hh.b0 == 1 ) 
  441.           {
  442.         q = memtop - 2 ; 
  443.         t = 0 ; 
  444.         do {
  445.             q = mem [ q ] .hh .v.RH ; 
  446.           if ( ( mem [ q ] .hh.b0 == 3 ) && ( mem [ q ] .hh.b1 == mem 
  447.           [ r ] .hh.b1 ) ) 
  448.           incr ( t ) ; 
  449.         } while ( ! ( q == mem [ r + 1 ] .hh .v.LH ) ) ; 
  450.         print ( 978 ) ; 
  451.         printint ( t ) ; 
  452.         print ( 979 ) ; 
  453.           } 
  454.           r = mem [ r ] .hh .v.RH ; 
  455.         } 
  456.       } 
  457.     } 
  458.     if ( mem [ memtop - 1 ] .hh .v.RH != 0 ) 
  459.     printnl ( 364 ) ; 
  460.       } 
  461.       showbox ( mem [ nest [ p ] .headfield ] .hh .v.RH ) ; 
  462.       switch ( abs ( m ) / ( 101 ) ) 
  463.       {case 0 : 
  464.     {
  465.       printnl ( 365 ) ; 
  466.       if ( a .cint <= -65536000L ) 
  467.       print ( 366 ) ; 
  468.       else printscaled ( a .cint ) ; 
  469.       if ( nest [ p ] .pgfield != 0 ) 
  470.       {
  471.         print ( 367 ) ; 
  472.         printint ( nest [ p ] .pgfield ) ; 
  473.         print ( 368 ) ; 
  474.         if ( nest [ p ] .pgfield != 1 ) 
  475.         printchar ( 115 ) ; 
  476.       } 
  477.     } 
  478.     break ; 
  479.       case 1 : 
  480.     {
  481.       printnl ( 369 ) ; 
  482.       printint ( a .hh .v.LH ) ; 
  483.       if ( m > 0 ) 
  484.       if ( a .hh .v.RH > 0 ) 
  485.       {
  486.         print ( 370 ) ; 
  487.         printint ( a .hh .v.RH ) ; 
  488.       } 
  489.     } 
  490.     break ; 
  491.       case 2 : 
  492.     if ( a .cint != 0 ) 
  493.     {
  494.       print ( 371 ) ; 
  495.       showbox ( a .cint ) ; 
  496.     } 
  497.     break ; 
  498.       } 
  499.     } 
  500.   while ( p-- > for_end ) ; } 
  501. void zprintparam ( n ) 
  502. integer n ; 
  503. {printparam_regmem 
  504.   switch ( n ) 
  505.   {case 0 : 
  506.     printesc ( 416 ) ; 
  507.     break ; 
  508.   case 1 : 
  509.     printesc ( 417 ) ; 
  510.     break ; 
  511.   case 2 : 
  512.     printesc ( 418 ) ; 
  513.     break ; 
  514.   case 3 : 
  515.     printesc ( 419 ) ; 
  516.     break ; 
  517.   case 4 : 
  518.     printesc ( 420 ) ; 
  519.     break ; 
  520.   case 5 : 
  521.     printesc ( 421 ) ; 
  522.     break ; 
  523.   case 6 : 
  524.     printesc ( 422 ) ; 
  525.     break ; 
  526.   case 7 : 
  527.     printesc ( 423 ) ; 
  528.     break ; 
  529.   case 8 : 
  530.     printesc ( 424 ) ; 
  531.     break ; 
  532.   case 9 : 
  533.     printesc ( 425 ) ; 
  534.     break ; 
  535.   case 10 : 
  536.     printesc ( 426 ) ; 
  537.     break ; 
  538.   case 11 : 
  539.     printesc ( 427 ) ; 
  540.     break ; 
  541.   case 12 : 
  542.     printesc ( 428 ) ; 
  543.     break ; 
  544.   case 13 : 
  545.     printesc ( 429 ) ; 
  546.     break ; 
  547.   case 14 : 
  548.     printesc ( 430 ) ; 
  549.     break ; 
  550.   case 15 : 
  551.     printesc ( 431 ) ; 
  552.     break ; 
  553.   case 16 : 
  554.     printesc ( 432 ) ; 
  555.     break ; 
  556.   case 17 : 
  557.     printesc ( 433 ) ; 
  558.     break ; 
  559.   case 18 : 
  560.     printesc ( 434 ) ; 
  561.     break ; 
  562.   case 19 : 
  563.     printesc ( 435 ) ; 
  564.     break ; 
  565.   case 20 : 
  566.     printesc ( 436 ) ; 
  567.     break ; 
  568.   case 21 : 
  569.     printesc ( 437 ) ; 
  570.     break ; 
  571.   case 22 : 
  572.     printesc ( 438 ) ; 
  573.     break ; 
  574.   case 23 : 
  575.     printesc ( 439 ) ; 
  576.     break ; 
  577.   case 24 : 
  578.     printesc ( 440 ) ; 
  579.     break ; 
  580.   case 25 : 
  581.     printesc ( 441 ) ; 
  582.     break ; 
  583.   case 26 : 
  584.     printesc ( 442 ) ; 
  585.     break ; 
  586.   case 27 : 
  587.     printesc ( 443 ) ; 
  588.     break ; 
  589.   case 28 : 
  590.     printesc ( 444 ) ; 
  591.     break ; 
  592.   case 29 : 
  593.     printesc ( 445 ) ; 
  594.     break ; 
  595.   case 30 : 
  596.     printesc ( 446 ) ; 
  597.     break ; 
  598.   case 31 : 
  599.     printesc ( 447 ) ; 
  600.     break ; 
  601.   case 32 : 
  602.     printesc ( 448 ) ; 
  603.     break ; 
  604.   case 33 : 
  605.     printesc ( 449 ) ; 
  606.     break ; 
  607.   case 34 : 
  608.     printesc ( 450 ) ; 
  609.     break ; 
  610.   case 35 : 
  611.     printesc ( 451 ) ; 
  612.     break ; 
  613.   case 36 : 
  614.     printesc ( 452 ) ; 
  615.     break ; 
  616.   case 37 : 
  617.     printesc ( 453 ) ; 
  618.     break ; 
  619.   case 38 : 
  620.     printesc ( 454 ) ; 
  621.     break ; 
  622.   case 39 : 
  623.     printesc ( 455 ) ; 
  624.     break ; 
  625.   case 40 : 
  626.     printesc ( 456 ) ; 
  627.     break ; 
  628.   case 41 : 
  629.     printesc ( 457 ) ; 
  630.     break ; 
  631.   case 42 : 
  632.     printesc ( 458 ) ; 
  633.     break ; 
  634.   case 43 : 
  635.     printesc ( 459 ) ; 
  636.     break ; 
  637.   case 44 : 
  638.     printesc ( 460 ) ; 
  639.     break ; 
  640.   case 45 : 
  641.     printesc ( 461 ) ; 
  642.     break ; 
  643.   case 46 : 
  644.     printesc ( 462 ) ; 
  645.     break ; 
  646.   case 47 : 
  647.     printesc ( 463 ) ; 
  648.     break ; 
  649.   case 48 : 
  650.     printesc ( 464 ) ; 
  651.     break ; 
  652.   case 49 : 
  653.     printesc ( 465 ) ; 
  654.     break ; 
  655.   case 50 : 
  656.     printesc ( 466 ) ; 
  657.     break ; 
  658.   case 51 : 
  659.     printesc ( 467 ) ; 
  660.     break ; 
  661.   case 52 : 
  662.     printesc ( 468 ) ; 
  663.     break ; 
  664.   case 53 : 
  665.     printesc ( 469 ) ; 
  666.     break ; 
  667.   case 54 : 
  668.     printesc ( 470 ) ; 
  669.     break ; 
  670.     default: 
  671.     print ( 471 ) ; 
  672.     break ; 
  673.   } 
  674. void begindiagnostic ( ) 
  675. {begindiagnostic_regmem 
  676.   oldsetting = selector ; 
  677.   if ( ( eqtb [ 6192 ] .cint <= 0 ) && ( selector == 19 ) ) 
  678.   {
  679.     decr ( selector ) ; 
  680.     if ( history == 0 ) 
  681.     history = 1 ; 
  682.   } 
  683. void zenddiagnostic ( blankline ) 
  684. boolean blankline ; 
  685. {enddiagnostic_regmem 
  686.   printnl ( 335 ) ; 
  687.   if ( blankline ) 
  688.   println () ; 
  689.   selector = oldsetting ; 
  690. void zprintlengthparam ( n ) 
  691. integer n ; 
  692. {printlengthparam_regmem 
  693.   switch ( n ) 
  694.   {case 0 : 
  695.     printesc ( 474 ) ; 
  696.     break ; 
  697.   case 1 : 
  698.     printesc ( 475 ) ; 
  699.     break ; 
  700.   case 2 : 
  701.     printesc ( 476 ) ; 
  702.     break ; 
  703.   case 3 : 
  704.     printesc ( 477 ) ; 
  705.     break ; 
  706.   case 4 : 
  707.     printesc ( 478 ) ; 
  708.     break ; 
  709.   case 5 : 
  710.     printesc ( 479 ) ; 
  711.     break ; 
  712.   case 6 : 
  713.     printesc ( 480 ) ; 
  714.     break ; 
  715.   case 7 : 
  716.     printesc ( 481 ) ; 
  717.     break ; 
  718.   case 8 : 
  719.     printesc ( 482 ) ; 
  720.     break ; 
  721.   case 9 : 
  722.     printesc ( 483 ) ; 
  723.     break ; 
  724.   case 10 : 
  725.     printesc ( 484 ) ; 
  726.     break ; 
  727.   case 11 : 
  728.     printesc ( 485 ) ; 
  729.     break ; 
  730.   case 12 : 
  731.     printesc ( 486 ) ; 
  732.     break ; 
  733.   case 13 : 
  734.     printesc ( 487 ) ; 
  735.     break ; 
  736.   case 14 : 
  737.     printesc ( 488 ) ; 
  738.     break ; 
  739.   case 15 : 
  740.     printesc ( 489 ) ; 
  741.     break ; 
  742.   case 16 : 
  743.     printesc ( 490 ) ; 
  744.     break ; 
  745.   case 17 : 
  746.     printesc ( 491 ) ; 
  747.     break ; 
  748.   case 18 : 
  749.     printesc ( 492 ) ; 
  750.     break ; 
  751.   case 19 : 
  752.     printesc ( 493 ) ; 
  753.     break ; 
  754.   case 20 : 
  755.     printesc ( 494 ) ; 
  756.     break ; 
  757.     default: 
  758.     print ( 495 ) ; 
  759.     break ; 
  760.   } 
  761. void zprintcmdchr ( cmd , chrcode ) 
  762. quarterword cmd ; 
  763. halfword chrcode ; 
  764. {printcmdchr_regmem 
  765.   switch ( cmd ) 
  766.   {case 1 : 
  767.     {
  768.       print ( 553 ) ; 
  769.       print ( chrcode ) ; 
  770.     } 
  771.     break ; 
  772.   case 2 : 
  773.     {
  774.       print ( 554 ) ; 
  775.       print ( chrcode ) ; 
  776.     } 
  777.     break ; 
  778.   case 3 : 
  779.     {
  780.       print ( 555 ) ; 
  781.       print ( chrcode ) ; 
  782.     } 
  783.     break ; 
  784.   case 6 : 
  785.     {
  786.       print ( 556 ) ; 
  787.       print ( chrcode ) ; 
  788.     } 
  789.     break ; 
  790.   case 7 : 
  791.     {
  792.       print ( 557 ) ; 
  793.       print ( chrcode ) ; 
  794.     } 
  795.     break ; 
  796.   case 8 : 
  797.     {
  798.       print ( 558 ) ; 
  799.       print ( chrcode ) ; 
  800.     } 
  801.     break ; 
  802.   case 9 : 
  803.     print ( 559 ) ; 
  804.     break ; 
  805.   case 10 : 
  806.     {
  807.       print ( 560 ) ; 
  808.       print ( chrcode ) ; 
  809.     } 
  810.     break ; 
  811.   case 11 : 
  812.     {
  813.       print ( 561 ) ; 
  814.       print ( chrcode ) ; 
  815.     } 
  816.     break ; 
  817.   case 12 : 
  818.     {
  819.       print ( 562 ) ; 
  820.       print ( chrcode ) ; 
  821.     } 
  822.     break ; 
  823.   case 75 : 
  824.   case 76 : 
  825.     if ( chrcode < 3800 ) 
  826.     printskipparam ( chrcode - 3782 ) ; 
  827.     else if ( chrcode < 4056 ) 
  828.     {
  829.       printesc ( 391 ) ; 
  830.       printint ( chrcode - 3800 ) ; 
  831.     } 
  832.     else {
  833.     
  834.       printesc ( 392 ) ; 
  835.       printint ( chrcode - 4056 ) ; 
  836.     } 
  837.     break ; 
  838.   case 72 : 
  839.     if ( chrcode >= 4322 ) 
  840.     {
  841.       printesc ( 403 ) ; 
  842.       printint ( chrcode - 4322 ) ; 
  843.     } 
  844.     else switch ( chrcode ) 
  845.     {case 4313 : 
  846.       printesc ( 394 ) ; 
  847.       break ; 
  848.     case 4314 : 
  849.       printesc ( 395 ) ; 
  850.       break ; 
  851.     case 4315 : 
  852.       printesc ( 396 ) ; 
  853.       break ; 
  854.     case 4316 : 
  855.       printesc ( 397 ) ; 
  856.       break ; 
  857.     case 4317 : 
  858.       printesc ( 398 ) ; 
  859.       break ; 
  860.     case 4318 : 
  861.       printesc ( 399 ) ; 
  862.       break ; 
  863.     case 4319 : 
  864.       printesc ( 400 ) ; 
  865.       break ; 
  866.     case 4320 : 
  867.       printesc ( 401 ) ; 
  868.       break ; 
  869.       default: 
  870.       printesc ( 402 ) ; 
  871.       break ; 
  872.     } 
  873.     break ; 
  874.   case 73 : 
  875.     if ( chrcode < 6218 ) 
  876.     printparam ( chrcode - 6163 ) ; 
  877.     else {
  878.     
  879.       printesc ( 472 ) ; 
  880.       printint ( chrcode - 6218 ) ; 
  881.     } 
  882.     break ; 
  883.   case 74 : 
  884.     if ( chrcode < 6751 ) 
  885.     printlengthparam ( chrcode - 6730 ) ; 
  886.     else {
  887.     
  888.       printesc ( 496 ) ; 
  889.       printint ( chrcode - 6751 ) ; 
  890.     } 
  891.     break ; 
  892.   case 45 : 
  893.     printesc ( 504 ) ; 
  894.     break ; 
  895.   case 90 : 
  896.     printesc ( 505 ) ; 
  897.     break ; 
  898.   case 40 : 
  899.     printesc ( 506 ) ; 
  900.     break ; 
  901.   case 41 : 
  902.     printesc ( 507 ) ; 
  903.     break ; 
  904.   case 77 : 
  905.     printesc ( 515 ) ; 
  906.     break ; 
  907.   case 61 : 
  908.     printesc ( 508 ) ; 
  909.     break ; 
  910.   case 42 : 
  911.     printesc ( 527 ) ; 
  912.     break ; 
  913.   case 16 : 
  914.     printesc ( 509 ) ; 
  915.     break ; 
  916.   case 107 : 
  917.     printesc ( 500 ) ; 
  918.     break ; 
  919.   case 88 : 
  920.     printesc ( 514 ) ; 
  921.     break ; 
  922.   case 15 : 
  923.     printesc ( 510 ) ; 
  924.     break ; 
  925.   case 92 : 
  926.     printesc ( 511 ) ; 
  927.     break ; 
  928.   case 67 : 
  929.     printesc ( 501 ) ; 
  930.     break ; 
  931.   case 62 : 
  932.     printesc ( 512 ) ; 
  933.     break ; 
  934.   case 64 : 
  935.     printesc ( 32 ) ; 
  936.     break ; 
  937.   case 102 : 
  938.     printesc ( 513 ) ; 
  939.     break ; 
  940.   case 32 : 
  941.     printesc ( 516 ) ; 
  942.     break ; 
  943.   case 36 : 
  944.     printesc ( 517 ) ; 
  945.     break ; 
  946.   case 39 : 
  947.     printesc ( 518 ) ; 
  948.     break ; 
  949.   case 37 : 
  950.     printesc ( 327 ) ; 
  951.     break ; 
  952.   case 44 : 
  953.     printesc ( 47 ) ; 
  954.     break ; 
  955.   case 18 : 
  956.     printesc ( 348 ) ; 
  957.     break ; 
  958.   case 46 : 
  959.     printesc ( 519 ) ; 
  960.     break ; 
  961.   case 17 : 
  962.     printesc ( 520 ) ; 
  963.     break ; 
  964.   case 54 : 
  965.     printesc ( 521 ) ; 
  966.     break ; 
  967.   case 91 : 
  968.     printesc ( 522 ) ; 
  969.     break ; 
  970.   case 34 : 
  971.     printesc ( 523 ) ; 
  972.     break ; 
  973.   case 65 : 
  974.     printesc ( 524 ) ; 
  975.     break ; 
  976.   case 103 : 
  977.     printesc ( 525 ) ; 
  978.     break ; 
  979.   case 55 : 
  980.     printesc ( 332 ) ; 
  981.     break ; 
  982.   case 63 : 
  983.     printesc ( 526 ) ; 
  984.     break ; 
  985.   case 66 : 
  986.     printesc ( 529 ) ; 
  987.     break ; 
  988.   case 96 : 
  989.     printesc ( 530 ) ; 
  990.     break ; 
  991.   case 0 : 
  992.     printesc ( 531 ) ; 
  993.     break ; 
  994.   case 98 : 
  995.     printesc ( 532 ) ; 
  996.     break ; 
  997.   case 80 : 
  998.     printesc ( 528 ) ; 
  999.     break ; 
  1000.   case 84 : 
  1001.     printesc ( 404 ) ; 
  1002.     break ; 
  1003.   case 109 : 
  1004.     printesc ( 533 ) ; 
  1005.     break ; 
  1006.   case 71 : 
  1007.     printesc ( 403 ) ; 
  1008.     break ; 
  1009.   case 38 : 
  1010.     printesc ( 349 ) ; 
  1011.     break ; 
  1012.   case 33 : 
  1013.     printesc ( 534 ) ; 
  1014.     break ; 
  1015.   case 56 : 
  1016.     printesc ( 535 ) ; 
  1017.     break ; 
  1018.   case 35 : 
  1019.     printesc ( 536 ) ; 
  1020.     break ; 
  1021.   case 13 : 
  1022.     printesc ( 593 ) ; 
  1023.     break ; 
  1024.   case 104 : 
  1025.     if ( chrcode == 0 ) 
  1026.     printesc ( 625 ) ; 
  1027.     else printesc ( 626 ) ; 
  1028.     break ; 
  1029.   case 110 : 
  1030.     switch ( chrcode ) 
  1031.     {case 1 : 
  1032.       printesc ( 628 ) ; 
  1033.       break ; 
  1034.     case 2 : 
  1035.       printesc ( 629 ) ; 
  1036.       break ; 
  1037.     case 3 : 
  1038.       printesc ( 630 ) ; 
  1039.       break ; 
  1040.     case 4 : 
  1041.       printesc ( 631 ) ; 
  1042.       break ; 
  1043.       default: 
  1044.       printesc ( 627 ) ; 
  1045.       break ; 
  1046.     } 
  1047.     break ; 
  1048.   case 89 : 
  1049.     if ( chrcode == 0 ) 
  1050.     printesc ( 472 ) ; 
  1051.     else if ( chrcode == 1 ) 
  1052.     printesc ( 496 ) ; 
  1053.     else if ( chrcode == 2 ) 
  1054.     printesc ( 391 ) ; 
  1055.     else printesc ( 392 ) ; 
  1056.     break ; 
  1057.   case 79 : 
  1058.     if ( chrcode == 1 ) 
  1059.     printesc ( 665 ) ; 
  1060.     else printesc ( 664 ) ; 
  1061.     break ; 
  1062.   case 82 : 
  1063.     if ( chrcode == 0 ) 
  1064.     printesc ( 666 ) ; 
  1065.     else printesc ( 667 ) ; 
  1066.     break ; 
  1067.   case 83 : 
  1068.     if ( chrcode == 1 ) 
  1069.     printesc ( 668 ) ; 
  1070.     else if ( chrcode == 3 ) 
  1071.     printesc ( 669 ) ; 
  1072.     else printesc ( 670 ) ; 
  1073.     break ; 
  1074.   case 70 : 
  1075.     switch ( chrcode ) 
  1076.     {case 0 : 
  1077.       printesc ( 671 ) ; 
  1078.       break ; 
  1079.     case 1 : 
  1080.       printesc ( 672 ) ; 
  1081.       break ; 
  1082.     case 2 : 
  1083.       printesc ( 673 ) ; 
  1084.       break ; 
  1085.     case 3 : 
  1086.       printesc ( 674 ) ; 
  1087.       break ; 
  1088.       default: 
  1089.       printesc ( 675 ) ; 
  1090.       break ; 
  1091.     } 
  1092.     break ; 
  1093.   case 108 : 
  1094.     switch ( chrcode ) 
  1095.     {case 0 : 
  1096.       printesc ( 731 ) ; 
  1097.       break ; 
  1098.     case 1 : 
  1099.       printesc ( 732 ) ; 
  1100.       break ; 
  1101.     case 2 : 
  1102.       printesc ( 733 ) ; 
  1103.       break ; 
  1104.     case 3 : 
  1105.       printesc ( 734 ) ; 
  1106.       break ; 
  1107.     case 4 : 
  1108.       printesc ( 735 ) ; 
  1109.       break ; 
  1110.       default: 
  1111.       printesc ( 736 ) ; 
  1112.       break ; 
  1113.     } 
  1114.     break ; 
  1115.   case 105 : 
  1116.     switch ( chrcode ) 
  1117.     {case 1 : 
  1118.       printesc ( 753 ) ; 
  1119.       break ; 
  1120.     case 2 : 
  1121.       printesc ( 754 ) ; 
  1122.       break ; 
  1123.     case 3 : 
  1124.       printesc ( 755 ) ; 
  1125.       break ; 
  1126.     case 4 : 
  1127.       printesc ( 756 ) ; 
  1128.       break ; 
  1129.     case 5 : 
  1130.       printesc ( 757 ) ; 
  1131.       break ; 
  1132.     case 6 : 
  1133.       printesc ( 758 ) ; 
  1134.       break ; 
  1135.     case 7 : 
  1136.       printesc ( 759 ) ; 
  1137.       break ; 
  1138.     case 8 : 
  1139.       printesc ( 760 ) ; 
  1140.       break ; 
  1141.     case 9 : 
  1142.       printesc ( 761 ) ; 
  1143.       break ; 
  1144.     case 10 : 
  1145.       printesc ( 762 ) ; 
  1146.       break ; 
  1147.     case 11 : 
  1148.       printesc ( 763 ) ; 
  1149.       break ; 
  1150.     case 12 : 
  1151.       printesc ( 764 ) ; 
  1152.       break ; 
  1153.     case 13 : 
  1154.       printesc ( 765 ) ; 
  1155.       break ; 
  1156.     case 14 : 
  1157.       printesc ( 766 ) ; 
  1158.       break ; 
  1159.     case 15 : 
  1160.       printesc ( 767 ) ; 
  1161.       break ; 
  1162.     case 16 : 
  1163.       printesc ( 768 ) ; 
  1164.       break ; 
  1165.       default: 
  1166.       printesc ( 752 ) ; 
  1167.       break ; 
  1168.     } 
  1169.     break ; 
  1170.   case 106 : 
  1171.     if ( chrcode == 2 ) 
  1172.     printesc ( 769 ) ; 
  1173.     else if ( chrcode == 4 ) 
  1174.     printesc ( 770 ) ; 
  1175.     else printesc ( 771 ) ; 
  1176.     break ; 
  1177.   case 4 : 
  1178.     if ( chrcode == 256 ) 
  1179.     printesc ( 891 ) ; 
  1180.     else {
  1181.     
  1182.       print ( 895 ) ; 
  1183.       print ( chrcode ) ; 
  1184.     } 
  1185.     break ; 
  1186.   case 5 : 
  1187.     if ( chrcode == 257 ) 
  1188.     printesc ( 892 ) ; 
  1189.     else printesc ( 893 ) ; 
  1190.     break ; 
  1191.   case 81 : 
  1192.     switch ( chrcode ) 
  1193.     {case 0 : 
  1194.       printesc ( 963 ) ; 
  1195.       break ; 
  1196.     case 1 : 
  1197.       printesc ( 964 ) ; 
  1198.       break ; 
  1199.     case 2 : 
  1200.       printesc ( 965 ) ; 
  1201.       break ; 
  1202.     case 3 : 
  1203.       printesc ( 966 ) ; 
  1204.       break ; 
  1205.     case 4 : 
  1206.       printesc ( 967 ) ; 
  1207.       break ; 
  1208.     case 5 : 
  1209.       printesc ( 968 ) ; 
  1210.       break ; 
  1211.     case 6 : 
  1212.       printesc ( 969 ) ; 
  1213.       break ; 
  1214.       default: 
  1215.       printesc ( 970 ) ; 
  1216.       break ; 
  1217.     } 
  1218.     break ; 
  1219.   case 14 : 
  1220.     if ( chrcode == 1 ) 
  1221.     printesc ( 1019 ) ; 
  1222.     else printesc ( 1018 ) ; 
  1223.     break ; 
  1224.   case 26 : 
  1225.     switch ( chrcode ) 
  1226.     {case 4 : 
  1227.       printesc ( 1020 ) ; 
  1228.       break ; 
  1229.     case 0 : 
  1230.       printesc ( 1021 ) ; 
  1231.       break ; 
  1232.     case 1 : 
  1233.       printesc ( 1022 ) ; 
  1234.       break ; 
  1235.     case 2 : 
  1236.       printesc ( 1023 ) ; 
  1237.       break ; 
  1238.       default: 
  1239.       printesc ( 1024 ) ; 
  1240.       break ; 
  1241.     } 
  1242.     break ; 
  1243.   case 27 : 
  1244.     switch ( chrcode ) 
  1245.     {case 4 : 
  1246.       printesc ( 1025 ) ; 
  1247.       break ; 
  1248.     case 0 : 
  1249.       printesc ( 1026 ) ; 
  1250.       break ; 
  1251.     case 1 : 
  1252.       printesc ( 1027 ) ; 
  1253.       break ; 
  1254.     case 2 : 
  1255.       printesc ( 1028 ) ; 
  1256.       break ; 
  1257.       default: 
  1258.       printesc ( 1029 ) ; 
  1259.       break ; 
  1260.     } 
  1261.     break ; 
  1262.   case 28 : 
  1263.     printesc ( 333 ) ; 
  1264.     break ; 
  1265.   case 29 : 
  1266.     printesc ( 337 ) ; 
  1267.     break ; 
  1268.   case 30 : 
  1269.     printesc ( 339 ) ; 
  1270.     break ; 
  1271.   case 21 : 
  1272.     if ( chrcode == 1 ) 
  1273.     printesc ( 1047 ) ; 
  1274.     else printesc ( 1048 ) ; 
  1275.     break ; 
  1276.   case 22 : 
  1277.     if ( chrcode == 1 ) 
  1278.     printesc ( 1049 ) ; 
  1279.     else printesc ( 1050 ) ; 
  1280.     break ; 
  1281.   case 20 : 
  1282.     switch ( chrcode ) 
  1283.     {case 0 : 
  1284.       printesc ( 405 ) ; 
  1285.       break ; 
  1286.     case 1 : 
  1287.       printesc ( 1051 ) ; 
  1288.       break ; 
  1289.     case 2 : 
  1290.       printesc ( 1052 ) ; 
  1291.       break ; 
  1292.     case 3 : 
  1293.       printesc ( 958 ) ; 
  1294.       break ; 
  1295.     case 4 : 
  1296.       printesc ( 1053 ) ; 
  1297.       break ; 
  1298.     case 5 : 
  1299.       printesc ( 960 ) ; 
  1300.       break ; 
  1301.       default: 
  1302.       printesc ( 1054 ) ; 
  1303.       break ; 
  1304.     } 
  1305.     break ; 
  1306.   case 31 : 
  1307.     if ( chrcode == 100 ) 
  1308.     printesc ( 1056 ) ; 
  1309.     else if ( chrcode == 101 ) 
  1310.     printesc ( 1057 ) ; 
  1311.     else if ( chrcode == 102 ) 
  1312.     printesc ( 1058 ) ; 
  1313.     else printesc ( 1055 ) ; 
  1314.     break ; 
  1315.   case 43 : 
  1316.     if ( chrcode == 0 ) 
  1317.     printesc ( 1074 ) ; 
  1318.     else printesc ( 1073 ) ; 
  1319.     break ; 
  1320.   case 25 : 
  1321.     if ( chrcode == 10 ) 
  1322.     printesc ( 1085 ) ; 
  1323.     else if ( chrcode == 11 ) 
  1324.     printesc ( 1084 ) ; 
  1325.     else printesc ( 1083 ) ; 
  1326.     break ; 
  1327.   case 23 : 
  1328.     if ( chrcode == 1 ) 
  1329.     printesc ( 1087 ) ; 
  1330.     else printesc ( 1086 ) ; 
  1331.     break ; 
  1332.   case 24 : 
  1333.     if ( chrcode == 1 ) 
  1334.     printesc ( 1089 ) ; 
  1335.     else printesc ( 1088 ) ; 
  1336.     break ; 
  1337.   case 47 : 
  1338.     if ( chrcode == 1 ) 
  1339.     printesc ( 45 ) ; 
  1340.     else printesc ( 346 ) ; 
  1341.     break ; 
  1342.   case 48 : 
  1343.     if ( chrcode == 1 ) 
  1344.     printesc ( 1121 ) ; 
  1345.     else printesc ( 1120 ) ; 
  1346.     break ; 
  1347.   case 50 : 
  1348.     switch ( chrcode ) 
  1349.     {case 16 : 
  1350.       printesc ( 859 ) ; 
  1351.       break ; 
  1352.     case 17 : 
  1353.       printesc ( 860 ) ; 
  1354.       break ; 
  1355.     case 18 : 
  1356.       printesc ( 861 ) ; 
  1357.       break ; 
  1358.     case 19 : 
  1359.       printesc ( 862 ) ; 
  1360.       break ; 
  1361.     case 20 : 
  1362.       printesc ( 863 ) ; 
  1363.       break ; 
  1364.     case 21 : 
  1365.       printesc ( 864 ) ; 
  1366.       break ; 
  1367.     case 22 : 
  1368.       printesc ( 865 ) ; 
  1369.       break ; 
  1370.     case 23 : 
  1371.       printesc ( 866 ) ; 
  1372.       break ; 
  1373.     case 26 : 
  1374.       printesc ( 868 ) ; 
  1375.       break ; 
  1376.       default: 
  1377.       printesc ( 867 ) ; 
  1378.       break ; 
  1379.     } 
  1380.     break ; 
  1381.   case 51 : 
  1382.     if ( chrcode == 1 ) 
  1383.     printesc ( 871 ) ; 
  1384.     else if ( chrcode == 2 ) 
  1385.     printesc ( 872 ) ; 
  1386.     else printesc ( 1122 ) ; 
  1387.     break ; 
  1388.   case 53 : 
  1389.     printstyle ( chrcode ) ; 
  1390.     break ; 
  1391.   case 52 : 
  1392.     switch ( chrcode ) 
  1393.     {case 1 : 
  1394.       printesc ( 1141 ) ; 
  1395.       break ; 
  1396.     case 2 : 
  1397.       printesc ( 1142 ) ; 
  1398.       break ; 
  1399.     case 3 : 
  1400.       printesc ( 1143 ) ; 
  1401.       break ; 
  1402.     case 4 : 
  1403.       printesc ( 1144 ) ; 
  1404.       break ; 
  1405.     case 5 : 
  1406.       printesc ( 1145 ) ; 
  1407.       break ; 
  1408.       default: 
  1409.       printesc ( 1140 ) ; 
  1410.       break ; 
  1411.     } 
  1412.     break ; 
  1413.   case 49 : 
  1414.     if ( chrcode == 30 ) 
  1415.     printesc ( 869 ) ; 
  1416.     else printesc ( 870 ) ; 
  1417.     break ; 
  1418.   case 93 : 
  1419.     if ( chrcode == 1 ) 
  1420.     printesc ( 1164 ) ; 
  1421.     else if ( chrcode == 2 ) 
  1422.     printesc ( 1165 ) ; 
  1423.     else printesc ( 1166 ) ; 
  1424.     break ; 
  1425.   case 97 : 
  1426.     if ( chrcode == 0 ) 
  1427.     printesc ( 1167 ) ; 
  1428.     else if ( chrcode == 1 ) 
  1429.     printesc ( 1168 ) ; 
  1430.     else if ( chrcode == 2 ) 
  1431.     printesc ( 1169 ) ; 
  1432.     else printesc ( 1170 ) ; 
  1433.     break ; 
  1434.   case 94 : 
  1435.     if ( chrcode != 0 ) 
  1436.     printesc ( 1185 ) ; 
  1437.     else printesc ( 1184 ) ; 
  1438.     break ; 
  1439.   case 95 : 
  1440.     switch ( chrcode ) 
  1441.     {case 0 : 
  1442.       printesc ( 1186 ) ; 
  1443.       break ; 
  1444.     case 1 : 
  1445.       printesc ( 1187 ) ; 
  1446.       break ; 
  1447.     case 2 : 
  1448.       printesc ( 1188 ) ; 
  1449.       break ; 
  1450.     case 3 : 
  1451.       printesc ( 1189 ) ; 
  1452.       break ; 
  1453.     case 4 : 
  1454.       printesc ( 1190 ) ; 
  1455.       break ; 
  1456.     case 5 : 
  1457.       printesc ( 1191 ) ; 
  1458.       break ; 
  1459.       default: 
  1460.       printesc ( 1192 ) ; 
  1461.       break ; 
  1462.     } 
  1463.     break ; 
  1464.   case 68 : 
  1465.     {
  1466.       printesc ( 509 ) ; 
  1467.       printhex ( chrcode ) ; 
  1468.     } 
  1469.     break ; 
  1470.   case 69 : 
  1471.     {
  1472.       printesc ( 520 ) ; 
  1473.       printhex ( chrcode ) ; 
  1474.     } 
  1475.     break ; 
  1476.   case 85 : 
  1477.     if ( chrcode == 4883 ) 
  1478.     printesc ( 411 ) ; 
  1479.     else if ( chrcode == 5907 ) 
  1480.     printesc ( 415 ) ; 
  1481.     else if ( chrcode == 5139 ) 
  1482.     printesc ( 412 ) ; 
  1483.     else if ( chrcode == 5395 ) 
  1484.     printesc ( 413 ) ; 
  1485.     else if ( chrcode == 5651 ) 
  1486.     printesc ( 414 ) ; 
  1487.     else printesc ( 473 ) ; 
  1488.     break ; 
  1489.   case 86 : 
  1490.     printsize ( chrcode - 4835 ) ; 
  1491.     break ; 
  1492.   case 99 : 
  1493.     if ( chrcode == 1 ) 
  1494.     printesc ( 946 ) ; 
  1495.     else printesc ( 934 ) ; 
  1496.     break ; 
  1497.   case 78 : 
  1498.     if ( chrcode == 0 ) 
  1499.     printesc ( 1208 ) ; 
  1500.     else printesc ( 1209 ) ; 
  1501.     break ; 
  1502.   case 87 : 
  1503.     {
  1504.       print ( 1217 ) ; 
  1505.       print ( fontname [ chrcode ] ) ; 
  1506.       if ( fontsize [ chrcode ] != fontdsize [ chrcode ] ) 
  1507.       {
  1508.     print ( 737 ) ; 
  1509.     printscaled ( fontsize [ chrcode ] ) ; 
  1510.     print ( 393 ) ; 
  1511.       } 
  1512.     } 
  1513.     break ; 
  1514.   case 100 : 
  1515.     switch ( chrcode ) 
  1516.     {case 0 : 
  1517.       printesc ( 272 ) ; 
  1518.       break ; 
  1519.     case 1 : 
  1520.       printesc ( 273 ) ; 
  1521.       break ; 
  1522.     case 2 : 
  1523.       printesc ( 274 ) ; 
  1524.       break ; 
  1525.       default: 
  1526.       printesc ( 1218 ) ; 
  1527.       break ; 
  1528.     } 
  1529.     break ; 
  1530.   case 60 : 
  1531.     if ( chrcode == 0 ) 
  1532.     printesc ( 1220 ) ; 
  1533.     else printesc ( 1219 ) ; 
  1534.     break ; 
  1535.   case 58 : 
  1536.     if ( chrcode == 0 ) 
  1537.     printesc ( 1221 ) ; 
  1538.     else printesc ( 1222 ) ; 
  1539.     break ; 
  1540.   case 57 : 
  1541.     if ( chrcode == 5139 ) 
  1542.     printesc ( 1228 ) ; 
  1543.     else printesc ( 1229 ) ; 
  1544.     break ; 
  1545.   case 19 : 
  1546.     switch ( chrcode ) 
  1547.     {case 1 : 
  1548.       printesc ( 1231 ) ; 
  1549.       break ; 
  1550.     case 2 : 
  1551.       printesc ( 1232 ) ; 
  1552.       break ; 
  1553.     case 3 : 
  1554.       printesc ( 1233 ) ; 
  1555.       break ; 
  1556.       default: 
  1557.       printesc ( 1230 ) ; 
  1558.       break ; 
  1559.     } 
  1560.     break ; 
  1561.   case 101 : 
  1562.     print ( 1240 ) ; 
  1563.     break ; 
  1564.   case 111 : 
  1565.     print ( 1241 ) ; 
  1566.     break ; 
  1567.   case 112 : 
  1568.     printesc ( 1242 ) ; 
  1569.     break ; 
  1570.   case 113 : 
  1571.     printesc ( 1243 ) ; 
  1572.     break ; 
  1573.   case 114 : 
  1574.     {
  1575.       printesc ( 1164 ) ; 
  1576.       printesc ( 1243 ) ; 
  1577.     } 
  1578.     break ; 
  1579.   case 115 : 
  1580.     printesc ( 1244 ) ; 
  1581.     break ; 
  1582.   case 59 : 
  1583.     switch ( chrcode ) 
  1584.     {case 0 : 
  1585.       printesc ( 1276 ) ; 
  1586.       break ; 
  1587.     case 1 : 
  1588.       printesc ( 590 ) ; 
  1589.       break ; 
  1590.     case 2 : 
  1591.       printesc ( 1277 ) ; 
  1592.       break ; 
  1593.     case 3 : 
  1594.       printesc ( 1278 ) ; 
  1595.       break ; 
  1596.     case 4 : 
  1597.       printesc ( 1279 ) ; 
  1598.       break ; 
  1599.     case 5 : 
  1600.       printesc ( 1280 ) ; 
  1601.       break ; 
  1602.       default: 
  1603.       print ( 1281 ) ; 
  1604.       break ; 
  1605.     } 
  1606.     break ; 
  1607.     default: 
  1608.     print ( 563 ) ; 
  1609.     break ; 
  1610.   } 
  1611.